package fr.univ.colloque.servlet;

import fr.univ.colloque.dao.ColloqueDao;
import fr.univ.colloque.dao.ExposeDao;
import fr.univ.colloque.dao.PersonneDao;
import fr.univ.colloque.data.Colloque;
import fr.univ.colloque.data.Expose;
import fr.univ.colloque.data.Personne;
import fr.univ.colloque.util.Link;
import java.io.IOException;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

public class ListeComiteColloque extends HttpServlet
{

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
    {
        Link lien = Link.LISTE_COMITE_EXPOSE;

        HttpSession session = req.getSession();

        Personne connecte = (Personne) session.getAttribute("user");

        if (connecte == null || !lien.getType().equals(connecte.getType()))
        {
            // La personne connecté n'a pas les droits nécessaires pour accéder à cette page
            resp.sendRedirect("indexCo.jsp?e=1");
        }
        else
        {
            String idStr = req.getParameter("id");

            int id = Integer.parseInt(idStr);
            ColloqueDao cDao = new ColloqueDao();
            Colloque co = cDao.get(id, false);

            ExposeDao eDao = new ExposeDao();
            PersonneDao pDao = new PersonneDao();

            List<Expose> lstExp = eDao.getExposesColloque(co);

            if (!eDao.isEvaluer(co))
            {
                pDao.enregistrerLesEvaluateurs(lstExp);
            }

            req.setAttribute("listeExpo", lstExp);

            req.setAttribute("page", lien);

            req.getRequestDispatcher("indexCo.jsp").forward(req, resp);
        }
    }
}
